<?php

/*
 * Script envia emails pendientes Diosas del Placer.
 * @Date: 01/07/2013
 * @Autor: Inicial.CL
 */

//***********************************************************************************
// CONSTANTES
//***********************************************************************************
define("SERVIDOR", "190.107.177.237");
define("USUARIO", "diosas_root");
define("PASSWORD", "qpwozmxn.2013");
define("BASE_DATOS", "diosas_newsletter");

include '/home2/cin5682/public_html/SendGrid_loader.php';

//***********************************************************************************
// LOG
//***********************************************************************************
$log = "";

//***********************************************************************************
// FUNCIONES
//***********************************************************************************
function ejecutaQuery($query) {
    $conn = mysql_connect(SERVIDOR, USUARIO, PASSWORD);
    mysql_select_db(BASE_DATOS, $conn);
    $res = mysql_query($query, $conn) or die(mysql_error());
    mysql_close($conn);
    return $res;
}

function writeln($txt, &$log) {
    $log .= $txt . "\n";
    echo $txt . "\n";
}

function actualizarLog($log) {
    $log = "\n" . $log;
    $log .= "******************************************************************\n";
    $basePath = dirname(__FILE__);
    @$fp = fopen($basePath . "/log_envio_news.txt", "a");
    if ($fp) {
        fputs($fp, $log);
        fclose($fp);
    }
}

function getCorreosSinEnviar() {
    $res = ejecutaQuery("SELECT
                            id,
                            nick,
                            email
                        FROM 
                            emails
                        WHERE
                            enviado = 0
                        LIMIT 100");
    $arrEmail = array();
    while ($row = mysql_fetch_array($res)) {
        $oEmail = new Email();
        $oEmail->setId($row["id"]);
        $oEmail->setNick($row["nick"]);
        $oEmail->setEmail($row["email"]);
        $arrEmail[] = $oEmail;
    }
    return $arrEmail;
}

//***********************************************************************************
// MAIN
//***********************************************************************************

try {
    writeln("INICIO  [" . date("d/m/Y H:i:s") . " Hrs]", $log);

    $arrEmail = getCorreosSinEnviar();
    $idEnviado = "";
    if (count($arrEmail) > 0) {
        foreach ($arrEmail as $oCorreo) {
            $sendgrid = new SendGrid('aubilla', 'Diosas.2013');
            $para = $oCorreo->getEmail();
            $titulo = "Noticias - Diosas del Placer";
            $mensaje = "<table cellspacing='0' cellpadding='0' style='font-family:LucidaGrande,tahoma,verdana,arial,sans-serif;width:100%;border: 1px solid #ccc;'>
                            <tr>
                                <th rowspan='7' style='width: 160px;'>
                                    <img src='http://diosasdelplacer.cl/themes/user/images/ddp.png' width='150' />
                                </th>
                            </tr>    
                            <tr>
                                <td style='padding: 10px 10px 10px 25px;border-bottom:1px solid #ccc;'>
                                    <span>News - Diosas del Placer</span>
                                </td>
                            </tr>
                            <tr>            
                                <td style='padding: 20px 10px 10px 25px;'>
                                    <span style='font-size:12px;'>
                                        Hola {#USUARIO}!, queremos invitarte a participar de nuestro concurso!, tenemos un increible premio para nuestros usuarios!, solo debes estar registrado en Diosas del Placer y ya estaras participando!, asi de facil! es GRATIS!
                                    </span>
                                </td>
                            </tr>
                            <tr>
                                <td style='font-size:12px;font-family:LucidaGrande,tahoma,verdana,arial,sans-serif;padding: 5px 10px 10px 25px;'>
                                    <a href='{#LINK}'>Concurso: Gana con Diosas del Placer y Fetish.cl</a>
                                </td>
                            </tr>
                            <br><br>
                            <tr>
                                <td style='font-size:12px;font-family:LucidaGrande,tahoma,verdana,arial,sans-serif;padding:10px 10px 10px 25px;border-top:1px solid #ccc;'>
                                    Esta es solo una notificaci&oacute;n, no responda a este mensaje.
                                </td>
                            </tr>
                            <tr>
                                <td style='font-size:12px;font-family:LucidaGrande,tahoma,verdana,arial,sans-serif;padding:10px 7px 10px 25px;border-left:none;border-right:none;border-top:1px solid #ccc;'>
                                    <a href='{#LINK}' style='text-decoration:none;border: 1px solid #ccc;padding: 5px;' target='_blank'><span style='font-weight:bold;white-space:nowrap;font-size:13px;'>Ir al enlace directamente</span></a>
                                </td>
                            </tr>
                        </table>";
            $mensaje = str_replace("{#USUARIO}", $oCorreo->getNick(), $mensaje);
            $mensaje = str_replace("{#LINK}", "http://www.diosasdelplacer.cl/index.php?page=Index.Concurso&a=eyJpZCI6IjMifQ==", $mensaje);
            
            /*
            $cabeceras = "MIME-Version: 1.0" . "\r\n";
            $cabeceras .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
            $cabeceras .= "From: Diosas del Placer <no-responder@diosasdelplacer.cl>" . "\r\n";
            */           

            $mail = new SendGrid\Mail();
            $mail->
                    addTo($para)->
                    setFrom('no-responder@diosasdelplacer.cl')->
                    setFromName('Diosas del Placer')->
                    setSubject($titulo)->
                    setText('')->
                    setHtml($mensaje);
            $exito = $sendgrid->
                    web->
                    send($mail);

            //$exito = mail($para, $titulo, $mensaje, $cabeceras);
            //if ($exito) {
            if(strpos($exito, "success") != false){
                $idEnviado .= $idEnviado == "" ? $oCorreo->getId() : "," . $oCorreo->getId();
                writeln("EMAIL ENVIADO A " . $oCorreo->getEmail() . "  [" . date("d/m/Y H:i:s") . " Hrs] OK", $log);
            } else {
                writeln("EMAIL NO ENVIADO " . $oCorreo->getEmail() . "  [" . date("d/m/Y H:i:s") . " Hrs] ERROR", $log);
            }
        }
        if ($idEnviado != "") {
            ejecutaQuery("UPDATE emails SET enviado=1 WHERE id IN($idEnviado)");
        }
    } else {
        writeln("NO HAY EMAILS QUE ENVIAR  [" . date("d/m/Y H:i:s") . " Hrs]", $log);
    }

    writeln("TERMINO [" . date("d/m/Y H:i:s") . " Hrs]", $log);
    actualizarLog($log);
} catch (Exception $ex) {
    writeln("ERROR : " . $ex->getMessage() . " [" . date("d/m/Y H:i:s") . " Hrs]", $log);
}

class Email {

    private $_id;
    private $_nick;
    private $_email;

    public function getId() {
        return $this->_id;
    }

    public function setId($id) {
        $this->_id = $id;
    }

    public function getNick() {
        return $this->_nick;
    }

    public function setNick($nick) {
        $this->_nick = $nick;
    }

    public function getEmail() {
        return $this->_email;
    }

    public function setEmail($email) {
        $this->_email = $email;
    }

}
?>

